﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

public class Solution
{
    public int[] Intersect(int[] nums1, int[] nums2)
    {
        int index = 0;
        int i = 0;
        int j = 0;
        int[] nums = new int[nums1.Length + nums2.Length];
        // List<int> nums=new ArrayList<>();
        Array.Sort(nums1);
        Array.Sort(nums2);
        while (i < nums1.Length && j < nums2.Length)
        {
            if (nums1[i] > nums2[j])
            {
                j++;
                continue;
            }
            else if (nums1[i] < nums2[j])
            {
                i++;
                continue;
            }
            else
            {
                nums[index++] = nums1[i];
                i++;
                j++;
                continue;
            }
        }
        int[] num = new int[index];
        for (int a = 0; a < index; a++)
        {
            num[a] = nums[a];
        }
        return num;



        //         Array nums=new Array();
        //         int i=0;
        //         int j=0;
        //         Array.Sort(nums1);
        //         Array.Sort(nums2);
        //         while(i<nums1.Length&&j<nums2.Length){
        //             if(nums1[i]>nums2[j]){
        //                 j++;
        //                 continue;
        //             }else if(nums1[i]<nums2[j]){
        //                 i++;
        //                 continue;
        //             }else {
        //                nums.Add(nums1[i]);
        //                 i++;
        //                 j++;
        //                 continue;
        //             }
        //         }
        //         return nums;

    }
}